IF exists(SELECT * FROM dbo.sysobjects WHERE name='alleOudercontactExtraOuder' AND xtype='P') 
BEGIN
	DROP PROCEDURE alleOudercontactExtraOuder
END
GO

CREATE     procedure alleOudercontactExtraOuder (@jaar char(4))
as
set nocount on

set nocount on

create table #resultaten(inschrijvingsNr char(7),deLeerling varchar(100),
jaar char(1),
klas varchar(5),
klasNr int,
deLeraar varchar(100),
vakcode char(2),
vaknaam varchar(50),
volgnummer char(2),
deDatum varchar(50),
lokaal varchar(50),
gevraagd char(1))

insert into #resultaten(inschrijvingsNr,deLeerling,jaar,klas,klasNr,
deLeraar,vakcode,vaknaam,volgnummer,
deDatum,lokaal,gevraagd)
select  lx.inschrijvingsNr,
        l.voornaam + ' ' + l.achternaam as deLeerling, 
	left(l.klas,1) as jaar,l.klas, l.klasNr, 
	ler.voornaam + ' ' + ler.achternaam as deLeraar,
	a.vakcode, v.vaknaam, v.volgnummer, 
	case when (Left(l.achternaam,1)<'M') then 
           (select gegevens from constanten where naam = 'datumOudersM')
	else 
	   (select gegevens from constanten where naam = 'datumOudersZ') 
	end as deDatum,o.lokaal,
	gevraagd=case when w.vak is not null 
			then 'x' else null end 
from leerlingen..leerlingenExtraOuder as lx
        left join leerlingen..leerlingen as l 
      on lx.inschrijvingsNr=l.inschrijvingsNr
	    left join (select * from ambtsverdeling 
                where not(left(klas,1) like '6' and vakcode like 'LO'))as a
	         on l.klas = a.klas
        left join vakvolgorde as v  
		on a.vakcode = v.vakcode 
	left join leraars as ler 
		on a.naamcode = ler.naamcode
	left join oudercontactLokalen as o
		on o.naamcode=ler.naamcode
	left join (select * from studiegegevens..Del_waarschuwingHuidigeKlas 
		   where jaar like @jaar) as w
	on lx.inschrijvingsNr=w.inschrijvingsNr
			and a.vakcode=w.vak
where l.klas is not null

insert into #resultaten(inschrijvingsNr,deLeerling,jaar,klas,klasNr,
deLeraar,vakcode,vaknaam,volgnummer,
deDatum,lokaal,gevraagd)	
select distinct
        lx.inschrijvingsNr,
        l.voornaam + ' ' + l.achternaam as deLeerling,
        left(l.klas,1) as jaar,l.klas, l.klasNr, 
	ler.voornaam + ' ' + ler.achternaam as deLeraar,
	a.vakcode, n.vaknaam, a.vakvolgorde, 
	case when (Left(l.achternaam,1)<'M') then 
           (select gegevens from constanten where naam = 'datumOudersM')
	else 
	   (select gegevens from constanten where naam = 'datumOudersZ') 
	end as deDatum,o.lokaal,
	gevraagd=case when w.vak is not null 
			then 'x' else null end 
from leerlingen..leerlingenExtraOuder as lx
       left join
      leerlingen..seminarieGroepen as ls 
	on ls.inschrijvingsNr = lx.inschrijvingsNr
        left join leerlingen..leerlingen as l
        on l.inschrijvingsNr=lx.inschrijvingsNr
	left join leerlingen..seminariegroepen as g
	  on ls.inschrijvingsNr = g.inschrijvingsNr 
	left join seminarieleraars as a
	  on g.groepsCode=a.groepscode
	left join leerlingen..seminarieNamen as n
	  on a.vakcode = n.vakcode
	left join leraars as ler 
		on a.naamcode = ler.naamcode
	left join oudercontactLokalen as o
		on o.naamcode=ler.naamcode
	left join (select * from studiegegevens..Del_waarschuwingHuidigeKlas 
		   where jaar like @jaar) as w
	on l.inschrijvingsNr=w.inschrijvingsNr
			and a.vakcode=w.vak
where l.klas is not null

select * from #resultaten where deLeraar is not null